<?php
namespace app\admin\controller;

//use \think\View;
use \think\Controller;
use app\admin\model\Admin as AdminModel;
use think\Db;

class Admin extends Controller
{
    //初始化
//    public function _initialize()
//    {
//        $admin = new AdminModel();
//    }

    //列表
    public function lst(){

        //模板输出(载入界面)的几种方法:

        // 1助手函数


        //2视图实例化  引入命名空间 继承类 实例化
//        $view = new \think\View([
//            'view_suffix' => 'htm'
//        ]);
//        return $view->fetch();

        //3 继承View  实例化
//        $view = new View([
//            'view_suffix' => 'htm'
//        ]);
//        return $view->fetch();

        //4 继承Controller 不用实例化直接输出
//        return $this->fetch();

        $admin = new AdminModel();
        $res = $admin->getAdmin();
        $this->assign('res',$res);
        return view();
    }

    //添加
    public function add(){
        //判断是否post提交的数据
        if (request()->isPost()){
            //1接受数据
            // $data = input('post.'); input TP5过滤数据安全处理函数

            //写入数据库的方法
            //方法1 助手函数
//            $res = db('admin')->insert(input('post.'));
            $admin = new AdminModel();
            $res = $admin->addAdmin(input('post.'));
            if ($res){
                $this->success('添加管理员成功',url('lst'));
            }else{
                $this->error('添加管理员失败');
            }

            return;
        }


        return view();
    }

    //修改
    public function edit($id){

        //查找原始数据
        $admins = db('admin')->find($id);

        //是否页面post提交的数据
        if (request()->isPost()) {
            $data = input('post.');
            if (!$data['username']) {
                $this->error('用户名不能为空');
            }

            if (!$data['password']) {
                $data['password'] = $admins['password'];
            }else{
                $data['password'] = md5($data['password']);
            }

            $admin = new AdminModel();
            $res = $admin->save([
                'username' => $data['username'],
                'password' => $data['password']
            ],['id' => $data['id']]);

            if ($res !== false)
            {
                $this->success('修改管理员成功!',url('lst'));
            }else{
                $this->error('修改失败!');
            }

            return;
        }

        if (!$admins){
            $this->error('管理员不存在!',url('lst'));
        }
        $this->assign('admins',$admins);
        return view();
    }

    //删除
    public function delet(){
        return view();
    }
}
